An Automatic Technique for Static Deadlock Prevention

نویسنده

  • Bertrand Meyer
چکیده

Deadlocks remain one of the biggest threats to concurrent programming. Usually, the best programmers can expect is dynamic deadlock detection, which is only a palliative. Object-oriented programs, with their rich reference structure and the resulting presence of aliasing, raise additional problems. The technique developed in this paper relies on the “alias calculus” to offer a completely static and completely automatic analysis of concurrent object-oriented programs. The discussion illustrates the technique by applying it to two versions of the “dining philosophers” program, of which it proves that the first is deadlockfree and the second deadlock-prone.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

A Hybrid Meta-heuristic Approach to Cope with State Space Explosion in Model Checking Technique for Deadlock Freeness

Model checking is an automatic technique for software verification through which all reachable states are generated from an initial state to finding errors and desirable patterns. In the model checking approach, the behavior and structure of system should be modeled. Graph transformation system is a graphical formal modeling language to specify and model the system. However, modeling of large s...

متن کامل

Combining Static Analysis and Testing for Deadlock Detection

Static deadlock analyzers might be able to verify the absence of deadlock, but when they detect a potential deadlock cycle, they provide little (or even none) information on their output. Due to the complex flow of concurrent programs, the user might not be able to find the source of the anomalous behaviour from the abstract information computed by static analysis. This paper proposes the combi...

متن کامل

Static Deadlock Detection for Active Objects

We present a static technique for deadlock detection for active objects. To do so, we introduce a novel kind of automata (visibly multiset automata, VMAs for short) to describe in an approximative manner the behaviour of one active object resp. a deadlock scenario. In this setting deadlock detection is checking the intersection of the VMAs for emptiness. We illustrate our technique in terms of ...

متن کامل

Deadlock Avoidance for Distributed Real-time and Embedded Systems a Dissertation Submitted to the Department of Computer Science and the Committee on Graduate Studies of Stanford University in Partial Fulfillment of the Requirements for the Degree of Doctor of Philosophy

This thesis studies how to prevent deadlocks in distributed real-time and embedded systems. Deadlocks are undesirable states of concurrent systems, characterized by a set of processes in a circular wait state, in which each process is blocked trying to gain access to a resource held by the next one in the chain. Solutions can be classified into three categories: • Deadlock detection is an optim...

متن کامل

Static Type Checking and Deadlock Prevention in Systems Based on Asynchronous Message Passing

Most strong, static type models were developed for centralized, sequential systems. However, static type checking may even be more useful in distributed systems because in these systems it is extremely diicult to restore a consistent system state after a type error has occurred. Type models for concurrent systems shall be more expressive than those for sequential systems. But for more expressiv...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2014